package main

import (
	"log"
	"net"

	"image-sever-grpc/oss-server/config"
	oss "image-sever-grpc/oss-server/proto"
	service "image-sever-grpc/oss-server/services"

	"google.golang.org/grpc"
)

func main() {
	// 1. 初始化配置：明确指定为oss-server，仅加载阿里云配置
	if err := config.InitConfig(); err != nil { // 关键修正：添加服务类型参数
		log.Fatalf("初始化配置失败: %v", err)
	}

	// 2. 监听端口
	lis, err := net.Listen("tcp", ":"+config.ServerPort) // 建议从配置读取端口
	if err != nil {
		log.Fatalf("无法监听端口: %v", err)
	}
	log.Printf("OSS gRPC 服务启动，监听端口: %s", config.ServerPort)

	// 3. 创建gRPC服务实例
	s := grpc.NewServer()

	// 4. 注册service到gRPC服务
	ossSvc, err := service.GetOSSService()
	if err != nil {
		log.Fatalf("创建 OSS 服务实例失败: %v", err)
	}
	oss.RegisterOSSServiceServer(s, ossSvc)

	// 5. 启动服务
	if err := s.Serve(lis); err != nil {
		log.Fatalf("服务启动失败: %v", err)
	}
}
